home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 013 / findup35.arc / FINDUP35.DOC < prev   
Encoding:
Text File  |  1986-05-15  |  19.1 KB  |  305 lines

  1. Program FindDupe is placed in the Public Domain system by the author.  It is
  2. however copyrighted and all rights and ownership are kept with the
  3. author.  You may use it, copy it, give it to your friends but don't
  4. try to sell it.  Because the devil will get you and if I find out
  5. I will prosecute.
  6.  
  7. The program is a Turbo Pascal Program that reads the directories of your
  8. disks - it really only works best with hard disks because you don't usually
  9. have sub directories on floppies.
  10.  
  11. The program will print on paper (using Epson controls - only form feed)
  12. or the screen.
  13.  
  14. It will give you a list of all files, sorted by file name, date, time,
  15. size and directory they are in.  It will also tell you if the file is read
  16. only, hidden, system or sub directory.
  17.  
  18. It will give you a list of all duplicate named files on your disk, with the
  19. same above information.
  20.  
  21. It will give you a Sorted Tree Dir of the files on your disk with the above
  22. information.
  23.  
  24. Best of luck in your computing and may this program help you in keeping
  25. your machine manageable.
  26.  
  27. If you are using this program and you find it of use in your system then
  28. please contribute to support this means of providing great software
  29. into the hands of people who need and use software in their daily activities.
  30.  
  31. I am requesting $10.00 or what ever you thing is reasonable for a program of
  32. this caliber -no more than $100,000.00-.
  33.  
  34. For businesses this fee is not optional.  The source code is not to be
  35. distributed in the any form.  The ownership rights rest solely with the
  36. copyright holder.  If a business feels that they must have to source code it
  37. can be provided for a fee of $35.00.  This only allows them to use it on the
  38. machine that it was purchased for it does not give them the right for unlimited
  39. distribution in their company.  The source code is never to be distributed
  40. only the compiled program.  I will be willing to discuss Site Licensing.
  41.  
  42. Copyright (C) 1984, 1985, 1986
  43. Karson W. Morrison
  44. Caleb Computing Center
  45. RD1, Box 531,
  46. Ringoes NJ. 08551
  47. (201)-788-1846
  48.  
  49.  
  50.  
  51.  
  52. Version 2.1 modifications
  53.  
  54.                Version 2.1   October 27, 1985
  55.                  Modifications by Ray Bobak
  56.                     Sysop PC-RAIN Node II
  57.                     Wappingers Falls, NY
  58.                     914-462-7674 (data)
  59.  
  60.  Updated code so that the input string from the command line was a
  61.  list of drives to perform the services on.  This change was made
  62.  to allow SYSOP's with multiple download drives to scan all his
  63.  download drives for duplicates.  (Here you go Charlie, your name
  64.  in lights.)  This version was inspired by Charlie Innusa, a sysop
  65.  running RBBS-PC on only nine 32 Megabyte download drives.  You can
  66.  call his BBS, PC-Rockland at 914-353-2157 Subscription node, or
  67.                               914-353-2176 free node
  68.  
  69.  
  70. FINDUP21 can now search across multiple drives.  Just string the drive
  71. letters after the program name.
  72.  
  73. The command 'FINDUP21 ABCDEFGHIJKLMNOP' will cause FINDUP21 to search across
  74. drives A, B, C, D, E, F, G, ... O, and P.  Running this progam on your LAN
  75. may be detrimental to your networks performance!  Note: sorting may take a
  76. large amount of temporary disk space.  For 10K files, an 800K datafile is
  77. used for intermediate storage of the sort.  Make sure you have the space!
  78.  
  79. Hope this helps all those SYSOP's out in keeping thier BBS's free of duplicate
  80. files on their multi-drive file systems.
  81.  
  82. Ray Bobak (aka The Wiz)
  83. Wappingers Falls, NY
  84. October 27, 1985
  85.  
  86. Sysop - PC-RAIN Node II
  87. Wappingers Falls, NY
  88. (914)-462-7674 (data only)
  89.  
  90.     ╔══════════════════════════════════════════════════════════════════════╗
  91.     ║  This program was written by and Copyright (C) 1984, 1985, 1986 by   ║
  92.     ║                                                                      ║
  93.     ║                              Karson W. Morrison                      ║
  94.     ║                              RD. 1, Box 531,                         ║
  95.     ║                              Ringoes, NJ. 08551                      ║
  96.     ║                              (201) 788-1846                          ║
  97.     ╠══════════════════════════════════════════════════════════════════════╣
  98.     ║  Acknowledgements:                                                   ║
  99.     ║                                                                      ║
  100.     ║  I used info picked up from a  bulletin  board  for  the  routines   ║
  101.     ║  to get system date and time.  That info. was created by  Jon Gray   ║
  102.     ║  of the IBM PC USERS GROUP Milwaukee.  It did have  a  bug  though   ║
  103.     ║  that would only work with months of 2 digits (now fixed by me).     ║
  104.     ║                                                                      ║
  105.     ║  I  also  used  routines  provided  by  Borland for the reading of   ║
  106.     ║  directories. This info was provided in their Turbo Tutor package.   ║
  107.     ║                                                                      ║
  108.     ║  Purpose:                                                            ║
  109.     ║                                                                      ║
  110.     ║  Every time I turned  around I  was  trying  to delete some of the   ║
  111.     ║  files on my hard disk because I was  always  ending  up with only   ║
  112.     ║  300 - 400 K left.  I kept  thinking  there  must be an easier way   ║
  113.     ║  to know if there were duplicate files.                              ║
  114.     ║                                                                      ║
  115.     ║                     This is the result                               ║
  116.     ╠══════════════════════════════════════════════════════════════════════╣
  117.     ║                Version 2.0   March 25, 1985                          ║
  118.     ║                    Made by the author.                               ║
  119.     ║                                                                      ║
  120.     ║  Updated program to put file size on  each line and put in a major   ║
  121.     ║  option for Sorted Tree Directories.                                 ║
  122.     ║                                                                      ║
  123.     ║  Every Tree Dir program that I have seen always  intersperces  sub   ║
  124.     ║  directories files where it finds them  with  the regular files in   ║
  125.     ║  that directory.  This program  put  files  together,  followed by   ║
  126.     ║  the sub directory files in  that directory.  The sub  directories   ║
  127.     ║  are sorted, and  then  printed  in  the  sorted  order within the   ║
  128.     ║  the parent directory.                                               ║
  129.     ║                                                                      ║
  130.     ║  Updated program to put output on a file DIRECTRY.DTA as an option   ║
  131.     ║  for later printing or other modification.                           ║
  132.     ╠══════════════════════════════════════════════════════════════════════╣
  133.     ║                Version 2.01   April 23, 1985                         ║
  134.     ║                    Made by the author.                               ║
  135.     ║                                                                      ║
  136.     ║  Made a change to increase the valid characters  that may be  in a   ║
  137.     ║  file name.  The 7Fh, DEL  char  may  be  in  a file name there by   ║
  138.     ║  making the file name unable to be entered from the keyboard.        ║
  139.     ║                                                                      ║
  140.     ║  This also is used to make a directory hidden.                       ║
  141.     ║  Fix the line which prints on the screen when a report is being      ║
  142.     ║  produced on paper.                                                  ║
  143.     ╠══════════════════════════════════════════════════════════════════════╣
  144.     ║              Version 2.02  July 28, 1985                             ║
  145.     ║                   Made by the author.                                ║
  146.     ║                                                                      ║
  147.     ║  Made a change to put a Clrscr in at the beginning of the program.   ║
  148.     ║  This was necessary if you use the Public Domain program to reset    ║
  149.     ║  the clear screen at the begining of the program.                    ║
  150.     ║  Turbo 3.0 also doesn't clear screen at beginning of program.        ║
  151.     ╠══════════════════════════════════════════════════════════════════════╣
  152.     ║             Version 2.03 September 9, 1985                           ║
  153.     ║                    Made by the author.                               ║
  154.     ║                                                                      ║
  155.     ║  Made a change to calculate to space used for 1K blocks which is     ║
  156.     ║  what is used when the data is stored on a floppy.                   ║
  157.     ╠══════════════════════════════════════════════════════════════════════╣
  158.     ║             Version 2.04 November 11, 1985                           ║
  159.     ║                     Made by author                                   ║
  160.     ║                                                                      ║
  161.     ║  Made a change to the first screen so that it would be easier to     ║
  162.     ║  understand the options.  Included Windows by Lynn Canning,          ║
  163.     ║  with the original code by Lane Farris.                              ║
  164.     ╠══════════════════════════════════════════════════════════════════════╣
  165.     ║             Version 3.00 December 12, 1985                           ║
  166.     ║                     Made by author                                   ║
  167.     ║  This version now requires Turbo 3.0                                 ║
  168.     ║                                                                      ║
  169.     ║  This version now will read multiple hard disks and floppies and     ║
  170.     ║  do its thing on the file names.                                     ║
  171.     ║                                                                      ║
  172.     ║       Option 1, 2, 4 will allow you to go to the screen, printer     ║
  173.     ║                      or disk file.                                   ║
  174.     ║       Option 3 will only go to disk file 'DIRECTRY.DTA' for the      ║
  175.     ║                directory and 'DUPLICAT.DTA' for the duplicate        ║
  176.     ║                entries.                                              ║
  177.     ║                                                                      ║
  178.     ║       Option 4 Sorted Tree Directory uses the Drive letter as its    ║
  179.     ║                major sort key.  Therefore it will not mix up file    ║
  180.     ║                and directories names from multiple drives.           ║
  181.     ║                                                                      ║
  182.     ║  This version of the program also supports floppies.  The program    ║
  183.     ║  would read them before but the output was not too useful because    ║
  184.     ║  only one floppy could be read at a time.  *** NOW *** the program   ║
  185.     ║  asks you if you are reading a hard drive or a floppy.  Nothing      ║
  186.     ║  happens to the machine if you answer the wrong answer, it is to     ║
  187.     ║  allow me to know if I should VolumeID the disk (I don't on Hard     ║
  188.     ║  Disks).  If you want me to Volume-ID a floppy just enter the data.  ║
  189.     ║  (What you enter will also show on the report as the main directory  ║
  190.     ║  If you don't enter a Volume-ID (return) I show the name 'FLOPPYnnn' ║
  191.     ║  as the main directory. (nnn is the number of the diskette entered)  ║
  192.     ║                                                                      ║
  193.     ║  If you want to speed up the entry process, and you have two or more ║
  194.     ║  floppy drives run the program as FINDDUPE AB.  The program will     ║
  195.     ║  alternate between the drives.  (NOTE:) one problem in using this    ║
  196.     ║  feature you must have a floppy for both A and B drives. (You could  ║
  197.     ║  place a blank formatted floppy in the last B: drive to insure       ║
  198.     ║  the completion of the input phase.)                                 ║
  199.     ║                                                                      ║
  200.     ║                                                                      ║
  201.     ║  Included into version 3.00 are changes made by Ray Bobak as he      ║
  202.     ║  noted above.                                                        ║
  203.     ║                                                                      ║
  204.     ╠══════════════════════════════════════════════════════════════════════╣
  205.     ║  Version 3.01 made by the author was a minor change to fix the time  ║
  206.     ║  when the hour was a one digit hour 1..9 am.  This program was never ║
  207.     ║  released into the public.  The arc file issued by the author was    ║
  208.     ║  also missing the windo.inc file.                                    ║
  209.     ╠══════════════════════════════════════════════════════════════════════╣
  210.     ║  Version 3.02 made by the author was made to properly handle the     ║
  211.     ║  floppy drive and the output when processing floppies on a floppy    ║
  212.     ║  system.  Unfortunatily I tested it on a hard disk system.  I created║
  213.     ║  the output file on a floppy (the first one that you wanted to read) ║
  214.     ║  and when I got around to writing the output, you now had a different║
  215.     ║  floppy in the drive -- the program abended.  I also cleaned up the  ║
  216.     ║  input of the command line.  If you enter FINDDUPE A:B:  I will      ║
  217.     ║  delete the colon before processing the data.                        ║
  218.     ║                                                                      ║
  219.     ║  I also changed the program to allow a volume-id to be read with     ║
  220.     ║  imbedded blanks in it.  Version 3.0 stopped the Volume-id at the    ║
  221.     ║  first blank.  I now start at position 11 and back up to the first   ║
  222.     ║  non-blank character and say that the volume-id is that many chars.  ║
  223.     ║  long.                                                               ║
  224.     ║                                                                      ║
  225.     ║  Keep the cards and letters flowing with changes, revisions needed   ║
  226.     ║  etc.  The next planned change is to prompt for deletion in the      ║
  227.     ║  duplicate file phase.  I know where the duplicates are I just need  ║
  228.     ║  you to tell me which one to delete (if you want to that is).        ║
  229.     ╠══════════════════════════════════════════════════════════════════════╣
  230.     ║  Version 3.03 made by the author to make a change to the way that    ║
  231.     ║  Turbo passes back a volume-id.  Turbo passes the data back like     ║
  232.     ║  a file name, meaning if the volume-id has imbedded spaces in the    ║
  233.     ║  position ending in 8 then turbo removes the space and puts the      ║
  234.     ║  period after the seventh character or if you have a vol-id like     ║
  235.     ║  TURBO   001 then the vol-id passed back is TURBO.001 which is not   ║
  236.     ║  what you wanted.  I also made changes to insure that before I       ║
  237.     ║  begin processing that I'm working on the correct drive.  Because    ║
  238.     ║  the program allows you to enter a command line I always used it and ║
  239.     ║  if nothing was entered then I defaulted to the current drive.  That ║
  240.     ║  may not have been what you wanted, therefore I ask the question     ║
  241.     ║  amy I working on the drive you want? and if not I ask for the       ║
  242.     ║  correct drive letters.                                              ║
  243.     ╠══════════════════════════════════════════════════════════════════════╣
  244.     ║  Version 3.05 made by author.  Some versions of MS-DOS (AT&T, TANDY  ║
  245.     ║  and maybe others) do something strange with Turbo Pascal when you   ║
  246.     ║  read a volume-id.  PC-DOS will give you the Volume-Id, but the      ║
  247.     ║  MS-DOS's above pass back the first file as the Volume-Id.  I have   ║
  248.     ║  put in coding to keep looking for a volume-id if what I get back    ║
  249.     ║  is not what I was expecting.                                        ║
  250.     ║                                                                      ║
  251.     ╚══════════════════════════════════════════════════════════════════════╝
  252.     ╔══════════════════════════════════════════════════════════════════════╗
  253.     ║  Yours for better Computing                                          ║
  254.     ║                             Karson W. Morrison Caleb Computing Center║
  255.     ╚══════════════════════════════════════════════════════════════════════╝
  256.  
  257.     ╔══════════════════════════════════════════════════════════════════════╗
  258.     ║                                                                      ║
  259.     ║  NOTE:                                                               ║
  260.     ║                                                                      ║
  261.     ║  A command line is used as input if entered else the default drive   ║
  262.     ║  is used.                                                            ║
  263.     ╚══════════════════════════════════════════════════════════════════════╝
  264.     ╔══════════════════════════════════════════════════════════════════════╗
  265.     ║                                                                      ║
  266.     ║  NOTE:                                                               ║
  267.     ║                                                                      ║
  268.     ║  Before you forget Please sent in your $10.00 registration fee and   ║
  269.     ║  I will make sure that you have the most resent version of the       ║
  270.     ║  of the program.  If this program does not work on your computer     ║
  271.     ║  because of your configuration (i.e. Does not support windows)       ║
  272.     ║  please let me know also and I can provide a version for that.       ║
  273.     ║                                                                      ║
  274.     ║  Businesses the fee is not optional.                                 ║
  275.     ║                                                                      ║
  276.     ╚══════════════════════════════════════════════════════════════════════╝
  277.  
  278. Note:  I have been asked how many records will this program sort.
  279.  
  280. Borland will not give any assistance in trying to find out, by giving formulas
  281. etc.  So this is the best that I can figure out.
  282.  
  283. The program reserves about 63k for itself and the windows, and it will take
  284. the rest of the available memory for sort work space.  When it runs out of
  285. memory then it writes the sort work data to disk.  What ever is your default
  286. drive.
  287.  
  288. On my machine I ran a CHKDSK and I had 219xxx free.
  289.  
  290. Finddupe would have been able to sort 2159 records, each one of them 73
  291. positions long.  This would have been a work space of 157461 in memory.
  292. If I tried to sort more records than that then it would have written some
  293. of them to disk.  The work area in memory is divided into pages, each of
  294. them less than 64K.  You will have at least 3 work areas (PAGES) in memory
  295. and when it writes to disk it will write a page.  In my example I had 3 pages
  296. each of them 157461 / 3 long or 52483 bytes.  You will have more than 3 pages
  297. when you have more than 64K * 3 <192K> of free memory.  The max is 10 pages
  298. 64K * 10 = 640K.
  299.  
  300. When the program writes to disk, it will write a page from memory, and then
  301. continue sorting.  If it runs out of disk space then the program abends.
  302. However if you have 360K of free space on your drive then it should handle
  303. over 6000 records.  (Again this is my assumption, because the sort work space
  304. does not stay around after the job is over).
  305.